package cn.edu.tcu.filter;

import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;

import cn.edu.tcu.myutils.MyUtil;

/**
 * 设置页面请求编码过滤器 / * 表示站点下面的所有的请求全部被当前过滤器进行处理
 */
@WebFilter("/*")
public class PageCharSetFilter implements Filter {

	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
			throws IOException, ServletException {
		// 进行过滤器的业务逻辑处理
		// 给请求对象 request、响应对象response设置编码
		request.setCharacterEncoding("UTF-8");
		response.setCharacterEncoding("UTF-8");
		MyUtil.logRootLogger.info("编码过滤器设置当前请求编码为：UTF-8");
		// 继续调用过滤器链中后续其他的过滤器进行处理，必须调用该方法，否则请求不能到达服务器端
		chain.doFilter(request, response);
	}

	public void init(FilterConfig fConfig) throws ServletException {
		// 初始化处理
	}

	@Override
	public void destroy() {
		// 退出消亡时进行的相关的业务逻辑处理

	}

}
